# frozen_string_literal: true

all_changed_files = helper.all_changed_files

def get_ci_config_files(files)
  files.select do |file|
    file.include?('gitlab/ci/config/entry')
  end
end

schema_path = 'app/assets/javascripts/editor/schema/ci.json'
schema_docs_path = 'https://docs.gitlab.com/ee/development/cicd/schema.html#write-specs'
has_schema_update = all_changed_files.include?(schema_path)
return if has_schema_update

ci_config_files = get_ci_config_files(all_changed_files)
return if ci_config_files.empty?

file_list = "- #{ci_config_files.map { |path| "`#{path}`" }.join("\n- ")}"

warn "This merge request changed CI config files but did not update the schema. Please consider updating [the schema](#{schema_path}) to reflect these changes:\n#{file_list}.\n\nRefer to the [docs](#{schema_docs_path}) for help on how to run and write specs for the CI schema."
